初心者が Fastly の基本を理解してみる
こんにちは、AWS事業本部の平木です!
Fastly 初心者が、Fastly に関して調べる機会があったため今回のブログを執筆しました。
Fastly とは
Fastly(ファストリー)は、インターネットのパフォーマンスとセキュリティを向上させるエッジクラウドプラットフォームです。
ユーザーは、 Fastly を使用することで一般的なサーバーよりも高速にコンテンツを配信できます。
また、エッジコンピューティングを活用することで、データやサービスをユーザーの近くのエッジに配置し、
その結果ウェブサイトやアプリケーションのパフォーマンスが大幅に向上させることもできます。
さらに、Fastly はセキュリティ機能も提供しているため、ユーザーはデータの安全性も確保できます。
基本的な用語
Fastly で使用される基本的な用語を簡単に解説します。
Edge(エッジ)
世界中に配置されたサーバーの集まり。CDN の場合、エッジ サーバーは、コンテンツ配信ネットワークの端にあります。
Origin(オリジン)
配信したいコンテンツが実際に格納されている起源。オリジンサーバは、CDN の中心にあります。
Cache Server(キャッシュサーバー)
エッジクラウドに参加する1台の Fastly コンピュータサーバー。
Sites(サイト)
単一の物理的施設にコロケーションされたキャッシュサーバー群。
Point of Presence (POP、配信拠点)
複数のマシンをクラスタリングして単一のキャッシュストレージプールを作成することを指します。
POP と Sites の関係は以下のような形です。
引用: Points of presence | Fastly Developer Hub
ほとんどの POPは、POP と同じ名前のサイトと1対1となり占有しますが、
POP が複数の物理サイトにまたがる場合、メトロ POP
と呼ばれます。
メトロ POP は Fastly ネットワーク上で最大のキャッシュ容量を備えているため、後述するオリジンシールドの場所として適切な選択肢となります。
Points of presence - metro pop | Fastly Developer Hub
Web interface(または、コントロールパネル)
ウェブブラウザ経由で Fastly サービスを設定する手段。
manage.fastly.com
で利用可能。
Fastly の概要
Fastly の機能についてネットワーク・セキュリティ・コンピューティング・可観測性の観点での概要を説明します。
ネットワーク
コンテンツ配信 (CDN)
Fastlyは、ユーザーがそのサイトを閲覧している地域に近いサーバーにコンテンツをキャッシュすることでウェブサイトの読み込み速度を改善します。
CDN については後述します。
Fastly CDN : コンテンツ配信ネットワークソリューション | Fastly
ビデオストリーミング向け CDN
ビデオとストリーミングサービスに高速で安定したストリーミングを提供します。
ロードバランシング
レイヤー7のロードバランサーを使用することで、DNS レイヤーとは異なり、きめ細かいルーティング条件に基づいて HTTP/HTTPS リクエストをバランスよく振り分けることができます。
ランダム、ラウンドロビン、重み付きラウンドロビン、スティッキーセッションのハッシュなどさまざまな分散方式を利用し、サーバーへの負担を効率的に分散します。
CDN ロード・バランシング・ソリューション | Fastly
画像最適化
画像をリアルタイムに最適化(圧縮や変換など)し、ページの読み込み速度を向上させます。
TLS暗号化
Webサイトやアプリケーションに対して、HTTPSを通じた安全なトラフィック配信を可能にするTLS(Transport Layer Security)サービスを提供しています。
これにより、サービスのプライバシーとデータセキュリティーを確保できます。TLS証明書は、ウェブサイトの所有者自身が生成・アップロードするか、または Fastly が代わりに生成することが可能です。
セキュリティ
次世代 WAF
マルチクラウド環境に対応した統合型の Web Application Firewall (WAF) ソリューションです。
Signal Sciences によって開発された根本的に異なるアプローチを採用しています。
主要コンポーネントである、エージェント・モジュール・Cloud Engine によって構成されています。
引用: アーキテクチャとデプロイの概要 | Fastly - PDF
この次世代 WAF により、アカウント乗っ取り攻撃や、悪質なボットによる攻撃、レイヤー3/4を狙った DDoS 攻撃の自動ブロックはもちろん、レイヤー7に対するより複雑な攻撃なども検査してブロックします。
Web アプリケーション/ API の保護ソリューション | Fastly
コンピューティング
Compute
以前は Compute@Edge として知られていた、CDN エッジでスクリプトを実行できる環境を提供されています。
一般的には「エッジコンピューティング」と呼ばれるもので、AWS の CloudFront Functions や、Cloudflare の Cloudflare Workers などと同様のものとなります。
サーバーレスコンピューティング環境 | Fastly Compute@Edge | Fastly
可観測性
リアルタイムログ機能
Fastly を経由するデータのログがリアルタイムでストリーミングされます。
ログの保存と分析のために、ログをストリーミングできるようSumo Logic や Papertrail などのログプロバイダーや Amazon S3 バケットにログファイルをプッシュ等可能です。
メトリクス
サービス全体を通じて200以上のメトリクスを提供し、インターネットトラフィックの可視化やオリジンのヘルスチェックなどが可能になります。
Fastly CDN について
Fastly CDN の仕組みは、リクエストがオリジンサーバーに直接送信される代わりに、世界中に点在する Fastly の points of presence (POP) のいずれかがリクエストに応答することで機能します。
Fastly では下記コンテンツタイプを配信します。
- 静的コンテンツ
- 動的コンテンツ
- ビデオコンテンツ
また、Fastly では下記コンテンツソースをサポートしています。
- Web サイト
- インターネット API
- インターネットアプリケーション
- ライブビデオとライブリニアビデオ
- ビデオオンデマンド (VOD) ライブラリ
Fastly でも、オリジンシールドという仕組みがあり、
通常、(ユーザー)→Fastly(キャッシュサーバー)→オリジンサーバー
の経路ですが、
オリジンシールドを有効化させると、Fastly とオリジンサーバーの間にオリジンシールドが配置されます。
オリジンシールドを使用しない場合、キャッシュサーバーにキャッシュが存在しない時はオリジンサーバーを参照しに行きますが、
オリジンシールドを使用した場合、キャッシュサーバーはオリジンシールドを参照します。
オリジンシールドにキャッシュが存在する場合はキャッシュが返り、存在しない場合は代わりにオリジンシールドがオリジンサーバーに問い合わせします。
そのため、下記メリットがあります。
- エンドユーザーからのリクエストがキャッシュに到達する確率が上がる
- どのキャッシュサーバー経由でアクセスしてもキャッシュがオリジンシールドに蓄えられるので最寄りのキャッシュサーバーにキャッシュが存在しない場合でもオリジンシールドのキャッシュを利用することができる。
- オリジンサーバーへの負荷軽減
- オリジンサーバーへの参照がオリジンシールドに絞ることが可能になる。
Shielding | Fastly Developer Hub
Fastly のメリット
Fastly を使用することの代表的なメリットを紹介します。
マルチクラウド戦略を強化できる
複数のクラウドプロバイダーの前段へ Fastly によるコントロールプレーンを構築することで、一貫したポリシーを確保することができたり、
クラウドサービスにて障害が発生した際に迅速に自動的にフェイルオーバーし可用性を維持することができます。
引用: Fastly でマルチクラウドを最適化 | Fastly
コスト最適化
キャッシュヒット率を高め、クラウドプロバイダーからの配信を減らすことで配信コストが減りインフラコストを最適化させることができます。
Fastly のグローバルインフラストラクチャ
2023年6月30日時点では、80か所の拠点(設置予定地を含む)あり、 各拠点の中でも単一の POP の拠点もあれば、複数の POP の拠点もあります。
日本国内では、東京・大阪にあります。
グローバルネットワーク容量としては、277Tbps にのぼり、
99パーセンタイルで TTFB が1ミリ秒未満のパーフォーマンスがあります。
※TTFBとは、クライアントがHTTPリクエストを送信し終わってから、レスポンスを受信し始めるまでの時間を指します。
1秒あたりのリクエスト数やキャッシュヒット率などをリアルタイムでホームページ上で公開しており、
2023年10月21日22時16分時点
では下記となっておりました。
Fastly のサポートプラン
Fastly のサポートプランには3種類あります。
- スタンダード
- Fastly に登録すると自動的に適用される無料のプラン。
- 対象者
- 小規模組織や開発者
- サポート内容
- Fastly コミュニティフォーラムへのアクセス
- テクニカルドキュメント
- セルフサービス型オンラインポータル
- メールサポート
- ゴールド
- 迅速な対応や優先対応などが SLA によって保証された、より充実したサポートプラン
- 対象者
- 一貫した量のトラフィックを抱える複数の Fastly サービスを運用している組織
- サポート内容
- スタンダードサポートの内容
- 影響の大きなイベントのアラート
- 数時間以内の優先対応の保証
- 24時間365日のインシデント対応
- エンタープライズ
- Fastly サポートチームによる24時間体制の緊急サポートをお客様の開発チームに直接提供するプラン
- 対象者
- 遅延の影響力が大きい、またはミッションクリティカルなグローバルトラフィックを抱える組織
- 内容
- ゴールドサポートの内容
- 電話サポート
- プライベート Slack チャンネルへのアクセス
- PCI/HIPAA 設定サービス
- 高度なコンプライアンスサポート (GDPR への対応を含む)
サポートプランの違いについては下記ページも参照ください。
Fastly の無料トライアル
下記ページより必要情報を入力することで簡単にサインアップ可能です。
サインアップすると自動的にスタンダードサポートのプランにてアカウントを使用できます。
参考リンク
- Edge cloud platform | エッジコンピューティング | Fastly
- Fastly入門(仕組み理解) #CDN - Qiita
- POP について: Points of presence | Fastly Developer Hub
- 用語集: Glossary of terms | Fastly Developer Hub
おわりに
今回は、Fastly についてざっくりとご紹介しました。
今回、 Fastly について調べてみて想像以上にいろんなことができたりサポートしているクラウドプロバイダーのタイプがあることが分かってきたため、
次回以降実際に使ってみたブログも執筆してより Fastly について勉強していきたいと思います。
この記事がどなたかの役に立てば嬉しいです。